package com.zck2.utils

import org.apache.spark.{SparkConf, SparkContext}

object GetConn {

  def getSc: SparkContext = {
    val conf: SparkConf = new SparkConf().
      setAppName("pTD-sh").setMaster("local[*]")


    //    setAppName("tt_hpx")
    //      .set("spark.driver.memory", "6g")
    //      .set("spark.executor.memory", "16g")
    //      .set("spark.executor.instances", "3")
    //      .set("spark.memory.fraction", "0.8")
    //      .set("spark.local.dir", "G:\\tmp")


   // val conf = new SparkConf()
//      .setAppName("tt_hpx")
//      .setMaster("spark://master:7077") // 修改为集群的正确 Master 地址
//      .set("spark.executor.memory", "1g")  // 每个 Executor 分配 2GB 内存
//      .set("spark.driver.memory", "1g")    // Driver 分配 1GB 内存
//      .set("spark.executor.instances", "3")  // 使用 3 个 Executor 实例（与 worker 数量一致）
//      .set("spark.cores.max", "6")          // 集群的最大核心数为 6（根据你的资源配置）
//      .setAppName("tt_hpx")                              // 应用名称
//      .setMaster("spark://master:7077")                   // 指定 Master 地址
//      .set("spark.executor.memory", "1g")                 // 每个 Executor 分配 1GB 内存
//      .set("spark.driver.memory", "1g")                   // Driver 分配 1GB 内存
//      .set("spark.executor.instances", "3")               // 使用 3 个 Executor 实例
//      .set("spark.executor.cores", "2")                   // 每个 Executor 使用 2 个核心
//      .set("spark.cores.max", "6")                        // 集群总共最大使用 6 个核心
//      .set("spark.dynamicAllocation.enabled", "false")    // 禁用动态资源分配，确保稳定的资源配置
    new SparkContext(conf)

  }

}
